main(){
  // 1.算数运算符
  // +-/*%
  // 多了一个~/
  num a1 = 5;
  num a2 = 2;
  print(a1+a2);//7
  print(a1-a2);//3
  print(a1*a2);//10
  print(a1/a2);//2.5
  print(a1%a2);//1
  print(a1~/a2);//2
  // 2.赋值运算符
  // +=  -= *= /= %= = ++ --
  print( a1+=a2 );
  print( a1-=a2 );
  print( a1*=a2 );
  print( a1/=a2 );
  print( a1%=a2 );
  print( a1++ );
  print( ++a1 );
  print( a1-- );
  print( --a1 );
  // 3.比较运算符
  // > < >= <= == != 
  print(a1 > a2);
  print(a1 < a2);
  print(a1 >= a2);
  print(a1 <= a2);
  print(a1 == a2);
  print(a1 != a2);
  // 4.逻辑运算符（不存在隐式转换，必须是布尔值参与）
  // ||  &&  !
  print( a1<0 || a2>0);
  print( a1<0 && a2>0);
  
  print(!(a1<0));
  // 短路运算符：JS里面可以写，dart不能这么写
  // cb && cb();
  // 逻辑运算符只能是布尔值参与（不存在隐式转换）,错误示范:
  // print( a1 || a2)//不能这么写
}